glibc/sysdeps/mach/hurd/Versions
Sergey Bugaev af2942cc62 mach, hurd: Drop __libc_lock_self0
This was used for the value of libc-lock's owner when TLS is not yet set
up, so THREAD_SELF can not be used. Since the value need not be anything
specific -- it just has to be non-NULL -- we can just use a plain
constant, such as (void *) 1, for this. This avoids accessing the symbol
through GOT, and exporting it from libc.so in the first place.

Signed-off-by: Sergey Bugaev <bugaevc@gmail.com>
Message-Id: <20230319151017.531737-12-bugaevc@gmail.com>
2023-04-03 01:02:44 +02:00

68 lines
1.4 KiB
Plaintext

libc {
GLIBC_2.0 {
# functions with a weak definition in the dynamic linker
__mmap;
}
GLIBC_2.2.6 {
# functions with a weak definition in the dynamic linker
__writev;
}
GLIBC_2.32 {
mremap;
}
GLIBC_2.35 {
close_range;
}
GLIBC_PRIVATE {
# Functions shared with the dynamic linker
__access; __access_noerrno; __libc_read; __libc_write; __libc_lseek64;
__close_nocancel;
__open_nocancel;
__read_nocancel; __pread64_nocancel;
__write_nocancel;
__getcwd;
__stat64;
_dl_init_first;
__close_nocancel_nostatus;
# functions used in other libraries
__sigprocmask;
}
}
ld {
GLIBC_2.0 {
# functions that must be shared with libc
__close; __getpid;
__mmap; __open; __read; __sbrk; __strtoul_internal;
__write; __writev;
_exit; _hurd_intr_rpc_mach_msg;
abort;
}
GLIBC_2.1 {
# functions that must be shared with libc
__pread64;
}
GLIBC_2.2 {
# functions that must be shared with libc
__open64;
}
GLIBC_2.2.6 {
# this also must be shared with libc.
__errno_location;
}
GLIBC_PRIVATE {
_dl_init_first;
# functions that must be shared with libc
__access; __access_noerrno; __libc_read; __libc_write; __libc_lseek64;
__close_nocancel;
__open_nocancel;
__read_nocancel; __pread64_nocancel;
__write_nocancel;
__getcwd;
__stat64; __fstat64;
}
}