libc { GLIBC_2.0 { %ifdef EXPORT_UNWIND_FIND_FDE __register_frame_info; __deregister_frame_info; %endif } GLIBC_2.1 { # functions used in other libraries _dl_mcount_wrapper; _dl_mcount_wrapper_check; } GLIBC_2.2.4 { dl_iterate_phdr; } %ifdef EXPORT_UNWIND_FIND_FDE GCC_3.0 { __register_frame_info_bases; __deregister_frame_info_bases; __register_frame_info_table_bases; _Unwind_Find_FDE; } %endif GLIBC_PRIVATE { # functions used in other libraries _dl_open; _dl_close; _dl_addr; _dl_sym; _dl_vsym; _dl_open_hook; __libc_dlopen_mode; __libc_dlsym; __libc_dlclose; } } ld { GLIBC_2.0 { # Function from libc.so which must be shared with libc. calloc; free; malloc; realloc; __libc_memalign; _r_debug; } GLIBC_2.1 { # functions used in other libraries _dl_mcount; # historically used by Garbage Collectors __libc_stack_end; } GLIBC_2.3 { # runtime interface to TLS __tls_get_addr; } GLIBC_PRIVATE { # Those are in the dynamic linker, but used by libc.so. __libc_enable_secure; _dl_argv; _dl_catch_error; _dl_check_map_versions; _dl_debug_printf; _dl_debug_state; _dl_dst_count; _dl_dst_substitute; _dl_init; _dl_lookup_symbol; _dl_lookup_symbol_skip; _dl_lookup_versioned_symbol; _dl_lookup_versioned_symbol_skip; _dl_map_object; _dl_map_object_deps; _dl_out_of_memory; _dl_relocate_object; _dl_signal_error; _dl_start_profile; _dl_starting_up; _dl_unload_cache; _rtld_global; _rtld_global_ro; _dl_tls_symaddr; _dl_allocate_tls; _dl_deallocate_tls; _dl_get_tls_static_info; _dl_allocate_tls_init; _dl_get_origin; _dl_tls_setup; _dl_rtld_di_serinfo; _dl_make_stack_executable; } }