thegeorg e493167a2c Provide sys/mman.h by the means of libc_compat | 1 месяц назад | |
---|---|---|
.. | ||
.yandex_meta | 1 месяц назад | |
getservbyname | 1 год назад | |
include | 1 месяц назад | |
memfd_create | 1 месяц назад | |
patches | 1 месяц назад | |
random | 1 год назад | |
reallocarray | 1 год назад | |
src | 1 год назад | |
ubuntu_14 | 1 месяц назад | |
README.md | 2 лет назад | |
collate.h | 1 месяц назад | |
explicit_bzero.c | 2 лет назад | |
glob.c | 1 месяц назад | |
glob.h | 1 месяц назад | |
ifaddrs.c | 1 месяц назад | |
memrchr.c | 2 лет назад | |
readpassphrase.c | 2 лет назад | |
stpcpy.c | 1 год назад | |
strcasestr.c | 1 год назад | |
string.c | 2 лет назад | |
string.h | 2 лет назад | |
strlcat.c | 2 лет назад | |
strlcpy.c | 2 лет назад | |
strsep.c | 1 год назад | |
unistd.h | 1 месяц назад | |
update.sh | 1 месяц назад | |
ya.make | 1 месяц назад |
This library implements a compatibility layer between various libc implementations.
The rationale for the library implementation is described in https://st.yandex-team.ru/IGNIETFERRO-1439.
The code is taken from multiple sources, thus both LICENSE() and VERSION() tags are not very representative.
During development one can make use of the following mapping of OS_SDK
into glibc version.
Ubuntu | glibc |
---|---|
20.04 | 2.30 |
18.04 | 2.27 |
16.04 | 2.23 |
14.04 | 2.18 |
12.04 | 2.15 |
10.04 | 2.11 |
Use the following commands to update the table above:
ya make util -DOS_SDK=ubuntu-xx -G | grep OS_SDK_ROOT | head -n 1
cd ~/.ya/tools/v4/$RESOURCE_ID
readelf -V $(find . -name 'libc.so.6')
.gnu.version_d
section prior to GLIBC_PRIVATE