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
21 # Configuration DEFAULT Earliest symbol set
22 # ------------- --------------- ------------------------------
24 s390x-.*-linux.* DEFAULT GLIBC_2.2
25 cris-.*-linux.* DEFAULT GLIBC_2.2
27 # Configuration Library=version Earliest symbol set (optional)
28 # ------------- --------------- ------------------------------
30 # The interface to -lm depends mostly only on cpu, not on operating system.
31 sparc64-.*-linux.* libm=6 GLIBC_2.2
32 alpha.*-.*-linux.* libm=6.1
33 mips.*-.*-linux.* libm=6 GLIBC_2.0 GLIBC_2.2
34 ia64-.*-linux.* libm=6.1 GLIBC_2.2
35 sh.*-.*-linux.* libm=6 GLIBC_2.2
36 hppa.*-.*-.* libm=6 GLIBC_2.2
38 .*-.*-gnu-gnu.* libm=6
40 # We provide libc.so.6 for Linux kernel versions 2.0 and later.
41 alpha.*-.*-linux.* libc=6.1
42 # Working mips versions were never released between 2.0 and 2.2.
43 mips.*-.*-linux.* libc=6 GLIBC_2.0 GLIBC_2.2
44 ia64-.*-linux.* libc=6.1 GLIBC_2.2
45 sh.*-.*-linux.* libc=6 GLIBC_2.2
46 sparc64-.*-linux.* libc=6 GLIBC_2.2
47 hppa.*-.*-.* libc=6 GLIBC_2.2
50 # libmachuser.so.1 corresponds to mach/*.defs as of Utah's UK22 release.
51 .*-.*-gnu-gnu.* libmachuser=1
53 # libhurduser.so.0.0 corresponds to hurd/*.defs as of 7 May 1996.
54 .*-.*-gnu-gnu.* libhurduser=0.0
57 # libc.so.0.2 is for the Hurd alpha release 0.2.
58 .*-.*-gnu-gnu.* libc=0.2
59 %else /* experimental only! */
61 .*-.*-gnu-gnu.* libc=0.2.91.libio GLIBC_2.2.3
64 # The dynamic loader also requires different names.
65 i.86-.*-linux.* ld=ld-linux.so.2
66 sparc64-.*-linux.* ld=ld-linux.so.2 GLIBC_2.2
67 sparc.*-.*-linux.* ld=ld-linux.so.2
68 alpha.*-.*-linux.* ld=ld-linux.so.2
69 arm.*-.*-linux.* ld=ld-linux.so.2
70 sh.*-.*-linux.* ld=ld-linux.so.2 GLIBC_2.2
71 ia64-.*-linux.* ld=ld-linux-ia64.so.2 GLIBC_2.2
72 mips.*-.*-linux.* ld=ld.so.1 GLIBC_2.0 GLIBC_2.2
73 hppa.*-.*-.* ld=ld.so.1 GLIBC_2.2
74 s390x-.*-linux.* ld=ld64.so.1 GLIBC_2.2
75 cris-.*-linux.* ld=ld.so.1 GLIBC_2.2
76 # We use the ELF ABI standard name for the default.
79 # The -ldl interface (see <dlfcn.h>) is the same on all platforms.
80 alpha.*-.*-linux.* libdl=2.1
81 mips.*-.*-linux.* libdl=2 GLIBC_2.0 GLIBC_2.2
84 # So far the -lutil interface is the same on all platforms, except for the
85 # `struct utmp' format, which depends on libc.
86 alpha.*-.*-linux.* libutil=1.1
89 # Version number 2 is used on other systems for the BIND 4.9.5 resolver
91 alpha.*-.*-linux.* libresolv=2.1
92 mips.*-.*-linux.* libresolv=2 GLIBC_2.0 GLIBC_2.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 mips.*-.*-linux.* libnss_files=2 GLIBC_2.0 GLIBC_2.2
99 mips.*-.*-linux.* libnss_dns=2 GLIBC_2.0 GLIBC_2.2
100 mips.*-.*-linux.* libnss_compat=2 GLIBC_2.0 GLIBC_2.2
101 mips.*-.*-linux.* libnss_nis=2 GLIBC_2.0 GLIBC_2.2
102 mips.*-.*-linux.* libnss_nisplus=2 GLIBC_2.0 GLIBC_2.2
103 mips.*-.*-linux.* libnss_ldap=2 GLIBC_2.0 GLIBC_2.2
104 mips.*-.*-linux.* libnss_hesiod=2 GLIBC_2.0 GLIBC_2.2
105 .*-.*-.* libnss_files=2
106 .*-.*-.* libnss_dns=2
107 .*-.*-.* libnss_compat=2
108 .*-.*-.* libnss_nis=2
109 .*-.*-.* libnss_nisplus=2
110 .*-.*-.* libnss_ldap=2
111 .*-.*-.* libnss_hesiod=2
113 # Version for libnsl with YP and NIS+ functions.
114 alpha.*-.*-linux.* libnsl=1.1
115 mips.*-.*-linux.* libnsl=1 GLIBC_2.0 GLIBC_2.2
118 # This defines the shared library version numbers we will install.
119 alpha.*-.*-linux.* libcrypt=1.1
122 # The gross patch for programs assuming broken locale implementations.
123 alpha.*-.*-linux.* libBrokenLocale=1.1
124 ia64-.*-.* libBrokenLocale=1 GLIBC_2.2
125 sh.*-.*-.* libBrokenLocale=1 GLIBC_2.2
126 sparc64-.*-.* libBrokenLocale=1 GLIBC_2.2
127 hppa-.*-.* libBrokenLocale=1 GLIBC_2.2
128 .*-.*-.* libBrokenLocale=1
130 # The real-time library from POSIX.1b.
131 mips.*-.*-linux.* librt=1 GLIBC_2.0 GLIBC_2.2
134 # The asynchronous name lookup library.