mirror of
git://sourceware.org/git/glibc.git
synced 2024-11-21 01:12:26 +08:00
cf197e41e7
2000-04-02 Ulrich Drepper <drepper@redhat.com> * elf/dl-fini.c (_dl_fini): Increment j counter after swapping in element at this position. * elf/Versions [ld.so] (GLIBC_2.2): Export _dl_load_lock. * elf/link.h (struct link_map): Add l_reldepsmax, l_reldepsact, and l_reldeps elements. * elf/dl-lookup.c (add_dependency): New function. (_dl_lookup_symbol): Use it whenever symbol was found in a global, dynamically loaded object. (_dl_lookup_symbol_skip): Likewise. (_dl_lookup_versioned_symbol): Likewise. (_dl_lookup_versioned_symbol_skip): Likewise. * elf/dl-open.c: Don't define _dl_load_lock here... * elf/rtld.c: ...but here... * elf/dl-support.c: ...and here. * elf/dl-close.c (_dl_close): Close also dependent objects introduce through relocation. * elf/dl-fini.c (_dl_fini): Also take dependencies introduced through relocations. * dlfcn/Makefile (glrefmain.out): Test is not expected to fail anymore. * dlfcn/glrefmain.c: Add one more debug message. * Makeconfig (preprocess-versions): Don't add $(CPPFLAGS) to compiler command line. * Makerules (sysd-versions): Use ( ) instead of { }. * elf/dl-load.c: Use __builtin_expect to signal that compiler should optimize for the non-debugging case. * elf/dl-lookup.c: Likewise. * sysdeps/generic/libc-start.c: Likewise.
61 lines
1.7 KiB
Plaintext
61 lines
1.7 KiB
Plaintext
libc {
|
|
GLIBC_2.0 {
|
|
# functions used in other libraries
|
|
_dl_open; _dl_close; _dl_addr;
|
|
}
|
|
GLIBC_2.1 {
|
|
# functions used in other libraries
|
|
_dl_mcount_wrapper; _dl_mcount_wrapper_check;
|
|
}
|
|
GLIBC_2.2 {
|
|
# this is defined in ld.so and overridden by libc
|
|
_dl_init_first;
|
|
|
|
# functions used in other libraries
|
|
_dl_sym; _dl_vsym;
|
|
}
|
|
}
|
|
|
|
ld.so {
|
|
GLIBC_2.0 {
|
|
# global variables
|
|
_dl_debug_impcalls; _dl_debug_fd;
|
|
|
|
# Those are in the dynamic linker, but used by libc.so.
|
|
__libc_enable_secure; _dl_catch_error; _dl_check_all_versions;
|
|
_dl_debug_initialize; _dl_debug_state; _dl_default_scope;
|
|
_dl_global_scope_end; _dl_lookup_symbol;
|
|
_dl_map_object; _dl_map_object_deps; _dl_object_relocation_scope;
|
|
_dl_relocate_object; _dl_signal_error; _dl_starting_up;
|
|
_dl_sysdep_start; _r_debug;
|
|
_dl_global_scope; _dl_lookup_symbol_skip;
|
|
_dl_lookup_versioned_symbol; _dl_lookup_versioned_symbol_skip;
|
|
_dl_debug_message;
|
|
|
|
# Function from libc.so which must be shared with libc.
|
|
calloc; free; malloc; realloc;
|
|
}
|
|
GLIBC_2.1 {
|
|
# global variables
|
|
_dl_profile; _dl_profile_map; _dl_profile_output; _dl_start_profile;
|
|
_dl_loaded; _dl_main_searchlist; _dl_fpu_control; _dl_initial_searchlist;
|
|
_dl_global_scope_alloc; __libc_stack_end;
|
|
|
|
# functions used in other libraries
|
|
_dl_mcount; _dl_unload_cache;
|
|
}
|
|
GLIBC_2.1.1 {
|
|
# global variables
|
|
_dl_lazy; _dl_origin_path; _dl_platformlen;
|
|
|
|
# functions used in other libraries
|
|
_dl_dst_count; _dl_dst_substitute;
|
|
}
|
|
GLIBC_2.2 {
|
|
_dl_init; _dl_load_lock;
|
|
|
|
# this is defined in ld.so and overridden by libc
|
|
_dl_init_first;
|
|
}
|
|
}
|