From c44838ebf8b8da0795d56e05b477c5d2b37b4a19 Mon Sep 17 00:00:00 2001 From: Florian Weimer Date: Wed, 2 Jun 2021 07:32:19 +0200 Subject: Add libc ABI extension kludge for baseline-violating libdl symbols Some targets have a GLIBC_2.0 baseline for libdl, while using GLIBC_2.2 for libc. This means that the generated libc.map file does not have any version nodes for GLIBC_2.0 or GLIBC_2.1. However, moving symbols from libdl into libc needs such version nodes. (Future symbol moves from librt will need this as well.) This kludge is only necessary for symbols predating GLIBC_2.2 because the affected targets use GLIBC_2.2 as the baseline for libc. Given the small number and fixed set of affected architectures, no generic mechanism is implemented, and instead the map file fragment is hard-coded in scripts/versions.mk. The compat_symbol macro already emits the appropriate version strings, so no adjustments are needed there. Reviewed-by: Adhemerval Zanella --- sysdeps/unix/sysv/linux/sh/Versions | 1 + 1 file changed, 1 insertion(+) (limited to 'sysdeps/unix/sysv/linux/sh') diff --git a/sysdeps/unix/sysv/linux/sh/Versions b/sysdeps/unix/sysv/linux/sh/Versions index 19ba1d8d91..9c734ff755 100644 --- a/sysdeps/unix/sysv/linux/sh/Versions +++ b/sysdeps/unix/sysv/linux/sh/Versions @@ -1,3 +1,4 @@ +!libc_pre_versions libc { GLIBC_2.2 { # functions used in other libraries -- cgit 1.4.1