Use __asm__("rsp") to get CURRENT_STACK_FRAME
[glibc.git] / shlib-versions
blobc530a44dffe89fa3e621dec62bc00a1d61fa9a6d
1 # This file defines the shared library version numbers we will install.
3 # The following lines list filename patterns matching canonical configurations,
4 # and the associated versions to use for various libraries.  The entire
5 # list is processed, with earlier entries taking precedence over later
6 # entries.  So loose patterns at the end of the list can give defaults.
8 # This file can use cpp-style conditionals starting with % instead of #
9 # to test the symbols defined in config.h by configure.
11 # In the optional third column, there can one or more symbol set names
12 # listed, which must be in ascending version order reading left to right
13 # and must appear in this same order in the Versions.def file.  Each listed
14 # version subsumes all prior versions back to the previous listed version.
16 # An entry with DEFAULT in the second column gives a default third column
17 # to apply on matching configurations when the matching entry for a particular
18 # library has no third column.  The defaults must precede the entries they
19 # apply to.
21 # An entry with WORDSIZE* in the second column gives an alternate
22 # configuration tuple whose macros will be conditionally defined in
23 # gnu/lib-names.h; @CPU@, @VENDOR@, @OS@ can be used in the third
24 # column to compose the alternate tuple matched against the patterns here.
26 # Configuration         DEFAULT                 Earliest symbol set
27 # -------------         ---------------         ------------------------------
29 s390x-.*-linux.*        DEFAULT                 GLIBC_2.2
30 x86_64-.*-linux.*       DEFAULT                 GLIBC_2.2.5
31 powerpc64-.*-linux.*    DEFAULT                 GLIBC_2.3
32 .*-.*-gnu-gnu.*         DEFAULT                 GLIBC_2.2.6
34 # Configuration         WORDSIZE[32|64]         Alternate configuration
35 # -------------         ----------              -----------------------
36 x86_64-.*-.*            WORDSIZE32              i686-@VENDOR@-@OS@
37 i.86-.*-.*              WORDSIZE64              x86_64-@VENDOR@-@OS@
38 s390x-.*-.*             WORDSIZE32              s390-@VENDOR@-@OS@
39 s390-.*-.*              WORDSIZE64              s390x-@VENDOR@-@OS@
40 powerpc64-.*-.*         WORDSIZE32              powerpc-@VENDOR@-@OS@
41 powerpc.*-.*-.*         WORDSIZE64              powerpc64-@VENDOR@-@OS@
42 sparc64.*-.*-.*         WORDSIZE32              sparc-@VENDOR@-@OS@
43 sparc.*-.*-.*           WORDSIZE64              sparc64-@VENDOR@-@OS@
45 # Configuration         ABI                     Identifier for ABI data files
46 # -------------         ----------              -----------------------------
47 sparc64.*-.*-.*         ABI                     sparc64-@OS@
48 sparc.*-.*-.*           ABI                     sparc-@OS@
50 # Configuration         Library=version         Earliest symbol set (optional)
51 # -------------         ---------------         ------------------------------
53 # The interface to -lm depends mostly only on cpu, not on operating system.
54 sparc64.*-.*-linux.*    libm=6                  GLIBC_2.2
55 sh.*-.*-linux.*         libm=6                  GLIBC_2.2
56 .*-.*-linux.*           libm=6
57 .*-.*-gnu-gnu.*         libm=6
59 # We provide libc.so.6 for Linux kernel versions 2.0 and later.
60 sh.*-.*-linux.*         libc=6                  GLIBC_2.2
61 sparc64.*-.*-linux.*    libc=6                  GLIBC_2.2
62 .*-.*-linux.*           libc=6
64 # libmachuser.so.1 corresponds to mach/*.defs as of Utah's UK22 release.
65 .*-.*-gnu-gnu.*         libmachuser=1
67 # libhurduser.so.0.3 corresponds to hurd/*.defs as of 11 June 2002.
68 .*-.*-gnu-gnu.*         libhurduser=0.3
70 # libc.so.0.3 is the first Hurd libc using libio.
71 .*-.*-gnu-gnu.*         libc=0.3
73 # The dynamic loader also requires different names.
74 i.86-.*-linux.*         ld=ld-linux.so.2
75 sparc64.*-.*-linux.*    ld=ld-linux.so.2        GLIBC_2.2
76 sparc.*-.*-linux.*      ld=ld-linux.so.2
77 sh.*-.*-linux.*         ld=ld-linux.so.2        GLIBC_2.2
78 s390x-.*-linux.*        ld=ld64.so.1            GLIBC_2.2
79 powerpc64.*-.*-linux.*  ld=ld64.so.1            GLIBC_2.3
80 x86_64-.*-linux.*       ld=ld-linux-x86-64.so.2 GLIBC_2.2.5
81 # We use the ELF ABI standard name for the default.
82 .*-.*-.*                ld=ld.so.1
84 # The -ldl interface (see <dlfcn.h>) is the same on all platforms.
85 .*-.*-.*                libdl=2
87 # So far the -lutil interface is the same on all platforms, except for the
88 # `struct utmp' format, which depends on libc.
89 .*-.*-.*                libutil=1
91 # Version number 2 is used on other systems for the BIND 4.9.5 resolver
92 # interface.
93 .*-.*-.*                libresolv=2
95 # Interface revision of nss_* modules.  This must match NSS_SHLIB_REVISION
96 # in nss/nsswitch.h, which determines the library names used for service
97 # names given in /etc/nsswitch.conf.
98 .*-.*-.*                libnss_files=2
99 .*-.*-.*                libnss_dns=2
100 .*-.*-.*                libnss_compat=2
101 .*-.*-.*                libnss_nis=2
102 .*-.*-.*                libnss_nisplus=2
103 .*-.*-.*                libnss_ldap=2
104 .*-.*-.*                libnss_hesiod=2
105 .*-.*-.*                libnss_db=2
107 # Tests for NSS.  They must have the same NSS_SHLIB_REVISION number as
108 # the rest.
109 .*-.*-.*                libnss_test1=2
111 # Version for libnsl with YP and NIS+ functions.
112 .*-.*-.*                libnsl=1
114 # This defines the shared library version numbers we will install.
115 .*-.*-.*                libcrypt=1
117 # The gross patch for programs assuming broken locale implementations.
118 sh.*-.*-.*              libBrokenLocale=1       GLIBC_2.2
119 sparc64.*-.*-.*         libBrokenLocale=1       GLIBC_2.2
120 .*-.*-.*                libBrokenLocale=1
122 # The real-time library from POSIX.1b.
123 .*-.*-.*                librt=1
125 # The asynchronous name lookup library.
126 .*-.*-.*                libanl=1