diff options
author | Ulrich Drepper <drepper@redhat.com> | 2000-06-08 03:03:00 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2000-06-08 03:03:00 +0000 |
commit | dec126b41a0bf2d807c3fc908bd8a0f1a9fa9277 (patch) | |
tree | d61bbc6512ab4f496d69ed494f1344704cb215ec /elf/rtld.c | |
parent | b8565e7817d7c6afd8eac804867b88c9bad1c9f1 (diff) | |
download | glibc-dec126b41a0bf2d807c3fc908bd8a0f1a9fa9277.tar.gz glibc-dec126b41a0bf2d807c3fc908bd8a0f1a9fa9277.tar.xz glibc-dec126b41a0bf2d807c3fc908bd8a0f1a9fa9277.zip |
Update.
* dlfcn/dlfcn.h: Pretty print dladdr declaraction. * elf/rtld.c (process_envvars): Recognize LD_DYNAMIC_WEAK. (_dl_dynamic_weak): New variable. * elf/dl-support.c: Likewise. * sysdeps/generic/ldsodefs.h: Declare _dl_dynamic_weak. * elf/do-lookup.h: If we find a weak definition treat it like a normal symbol unless _dl_dynamic_weak is nonzero. In the latter case treat it like before.
Diffstat (limited to 'elf/rtld.c')
-rw-r--r-- | elf/rtld.c | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/elf/rtld.c b/elf/rtld.c index f358700466..6bf1dba089 100644 --- a/elf/rtld.c +++ b/elf/rtld.c @@ -87,6 +87,7 @@ const char *_dl_profile; const char *_dl_profile_output; struct link_map *_dl_profile_map; int _dl_lazy; +int _dl_dynamic_weak; int _dl_debug_libs; int _dl_debug_impcalls; int _dl_debug_bindings; @@ -1393,6 +1394,13 @@ process_envvars (enum mode *modep, int *lazyp) break; case 12: + /* The library search path. */ + if (memcmp (&envline[3], "LIBRARY_PATH", 12) == 0) + { + library_path = &envline[16]; + break; + } + /* Where to place the profiling data file. */ if (memcmp (&envline[3], "DEBUG_OUTPUT", 12) == 0) { @@ -1400,9 +1408,8 @@ process_envvars (enum mode *modep, int *lazyp) break; } - /* The library search path. */ - if (memcmp (&envline[3], "LIBRARY_PATH", 12) == 0) - library_path = &envline[16]; + if (memcmp (&envline[3], "DYNAMIC_WEAK", 12) == 0) + _dl_dynamic_weak = 1; break; case 14: |