]> git.ipfire.org Git - thirdparty/glibc.git/blob - shlib-versions
[BZ #710]
[thirdparty/glibc.git] / shlib-versions
1 # This file defines the shared library version numbers we will install.
2
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.
7
8 # This file can use cpp-style conditionals starting with % instead of #
9 # to test the symbols defined in config.h by configure.
10
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.
15 #
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.
20 #
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.
25
26 # Configuration DEFAULT Earliest symbol set
27 # ------------- --------------- ------------------------------
28
29 s390x-.*-linux.* DEFAULT GLIBC_2.2
30 cris-.*-linux.* DEFAULT GLIBC_2.2
31 x86_64-.*-linux.* DEFAULT GLIBC_2.2.5
32 powerpc64-.*-linux.* DEFAULT GLIBC_2.3
33 .*-.*-gnu-gnu.* DEFAULT GLIBC_2.2.6
34
35 # Configuration WORDSIZE[32|64] Alternate configuration
36 # ------------- ---------- -----------------------
37 x86_64-.*-.* WORDSIZE32 i686-@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@
44
45 # Configuration Library=version Earliest symbol set (optional)
46 # ------------- --------------- ------------------------------
47
48 # The interface to -lm depends mostly only on cpu, not on operating system.
49 sparc64-.*-linux.* libm=6 GLIBC_2.2
50 alpha.*-.*-linux.* libm=6.1
51 mips.*-.*-linux.* libm=6 GLIBC_2.0 GLIBC_2.2
52 ia64-.*-linux.* libm=6.1 GLIBC_2.2
53 sh.*-.*-linux.* libm=6 GLIBC_2.2
54 hppa.*-.*-.* libm=6 GLIBC_2.2
55 .*-.*-linux.* libm=6
56 .*-.*-gnu-gnu.* libm=6
57
58 # We provide libc.so.6 for Linux kernel versions 2.0 and later.
59 alpha.*-.*-linux.* libc=6.1
60 # Working mips versions were never released between 2.0 and 2.2.
61 mips.*-.*-linux.* libc=6 GLIBC_2.0 GLIBC_2.2
62 ia64-.*-linux.* libc=6.1 GLIBC_2.2
63 sh.*-.*-linux.* libc=6 GLIBC_2.2
64 sparc64-.*-linux.* libc=6 GLIBC_2.2
65 hppa.*-.*-.* libc=6 GLIBC_2.2
66 .*-.*-linux.* libc=6
67
68 # libmachuser.so.1 corresponds to mach/*.defs as of Utah's UK22 release.
69 .*-.*-gnu-gnu.* libmachuser=1
70
71 # libhurduser.so.0.3 corresponds to hurd/*.defs as of 11 June 2002.
72 .*-.*-gnu-gnu.* libhurduser=0.3
73
74 # libc.so.0.3 is the first Hurd libc using libio.
75 .*-.*-gnu-gnu.* libc=0.3
76
77 # The dynamic loader also requires different names.
78 i.86-.*-linux.* ld=ld-linux.so.2
79 sparc64-.*-linux.* ld=ld-linux.so.2 GLIBC_2.2
80 sparc.*-.*-linux.* ld=ld-linux.so.2
81 alpha.*-.*-linux.* ld=ld-linux.so.2
82 arm.*-.*-linux.* ld=ld-linux.so.2
83 sh.*-.*-linux.* ld=ld-linux.so.2 GLIBC_2.2
84 ia64-.*-linux.* ld=ld-linux-ia64.so.2 GLIBC_2.2
85 mips.*-.*-linux.* ld=ld.so.1 GLIBC_2.0 GLIBC_2.2
86 hppa.*-.*-.* ld=ld.so.1 GLIBC_2.2
87 s390x-.*-linux.* ld=ld64.so.1 GLIBC_2.2
88 powerpc64.*-.*-linux.* ld=ld64.so.1 GLIBC_2.3
89 cris-.*-linux.* ld=ld.so.1 GLIBC_2.2
90 x86_64-.*-linux.* ld=ld-linux-x86-64.so.2 GLIBC_2.2.5
91 # We use the ELF ABI standard name for the default.
92 .*-.*-.* ld=ld.so.1
93
94 # The -ldl interface (see <dlfcn.h>) is the same on all platforms.
95 alpha.*-.*-linux.* libdl=2.1
96 mips.*-.*-linux.* libdl=2 GLIBC_2.0 GLIBC_2.2
97 .*-.*-.* libdl=2
98
99 # So far the -lutil interface is the same on all platforms, except for the
100 # `struct utmp' format, which depends on libc.
101 alpha.*-.*-linux.* libutil=1.1
102 .*-.*-.* libutil=1
103
104 # Version number 2 is used on other systems for the BIND 4.9.5 resolver
105 # interface.
106 alpha.*-.*-linux.* libresolv=2.1
107 mips.*-.*-linux.* libresolv=2 GLIBC_2.0 GLIBC_2.2
108 .*-.*-.* libresolv=2
109
110 # Interface revision of nss_* modules. This must match NSS_SHLIB_REVISION
111 # in nss/nsswitch.h, which determines the library names used for service
112 # names given in /etc/nsswitch.conf.
113 mips.*-.*-linux.* libnss_files=2 GLIBC_2.0 GLIBC_2.2
114 mips.*-.*-linux.* libnss_dns=2 GLIBC_2.0 GLIBC_2.2
115 mips.*-.*-linux.* libnss_compat=2 GLIBC_2.0 GLIBC_2.2
116 mips.*-.*-linux.* libnss_nis=2 GLIBC_2.0 GLIBC_2.2
117 mips.*-.*-linux.* libnss_nisplus=2 GLIBC_2.0 GLIBC_2.2
118 mips.*-.*-linux.* libnss_ldap=2 GLIBC_2.0 GLIBC_2.2
119 mips.*-.*-linux.* libnss_hesiod=2 GLIBC_2.0 GLIBC_2.2
120 .*-.*-.* libnss_files=2
121 .*-.*-.* libnss_dns=2
122 .*-.*-.* libnss_compat=2
123 .*-.*-.* libnss_nis=2
124 .*-.*-.* libnss_nisplus=2
125 .*-.*-.* libnss_ldap=2
126 .*-.*-.* libnss_hesiod=2
127
128 # Version for libnsl with YP and NIS+ functions.
129 alpha.*-.*-linux.* libnsl=1.1
130 mips.*-.*-linux.* libnsl=1 GLIBC_2.0 GLIBC_2.2
131 .*-.*-.* libnsl=1
132
133 # This defines the shared library version numbers we will install.
134 alpha.*-.*-linux.* libcrypt=1.1
135 .*-.*-.* libcrypt=1
136
137 # The gross patch for programs assuming broken locale implementations.
138 alpha.*-.*-linux.* libBrokenLocale=1.1
139 ia64-.*-.* libBrokenLocale=1 GLIBC_2.2
140 sh.*-.*-.* libBrokenLocale=1 GLIBC_2.2
141 sparc64-.*-.* libBrokenLocale=1 GLIBC_2.2
142 hppa-.*-.* libBrokenLocale=1 GLIBC_2.2
143 .*-.*-.* libBrokenLocale=1
144
145 # The real-time library from POSIX.1b.
146 mips.*-.*-linux.* librt=1 GLIBC_2.0 GLIBC_2.2
147 .*-.*-.* librt=1
148
149 # The asynchronous name lookup library.
150 .*-.*-.* libanl=1