Update.
[kopensolaris-gnu/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 # Configuration         Library=version         Earliest symbol set (optional)
17 # -------------         ---------------         ------------------------------
18
19 # The interface to -lm depends mostly only on cpu, not on operating system.
20 i.86-.*-.*              libm=6
21 m68k-.*-.*              libm=6
22 sparc64-.*-linux.*      libm=6                  GLIBC_2.2
23 sparc.*-.*-.*           libm=6
24 alpha.*-.*-linux.*      libm=6.1
25 alpha.*-.*-.*           libm=6
26 powerpc-.*-.*           libm=6
27 mips.*-.*-linux.*       libm=6                  GLIBC_2.0 GLIBC_2.2
28 mips.*-.*-.*            libm=6
29 arm.*-.*-.*             libm=6
30 ia64-.*-.*              libm=6.1                GLIBC_2.2
31 sh.*-.*-.*              libm=6                  GLIBC_2.2
32
33 # We provide libc.so.6 for Linux kernel versions 2.0 and later.
34 alpha.*-.*-linux.*      libc=6.1
35 # Working mips versions were never released between 2.0 and 2.2.
36 mips.*-.*-linux.*       libc=6                  GLIBC_2.0 GLIBC_2.2
37 ia64-.*-.*              libc=6.1                GLIBC_2.2
38 sh.*-.*-.*              libc=6                  GLIBC_2.2
39 sparc64-.*-linux.*      libc=6                  GLIBC_2.2
40 .*-.*-linux.*           libc=6
41
42 # libmachuser.so.1 corresponds to mach/*.defs as of Utah's UK22 release.
43 .*-.*-gnu-gnu.*         libmachuser=1
44
45 # libhurduser.so.0.0 corresponds to hurd/*.defs as of 7 May 1996.
46 .*-.*-gnu-gnu*          libhurduser=0.0
47
48 # libc.so.0.2 is for the Hurd alpha release 0.2.
49 %ifdef USE_IN_LIBIO /* experimental only! */
50 .*-.*-gnu-gnu*          libc=0.2.90.libio       GLIBC_2.2
51 %else
52 .*-.*-gnu-gnu*          libc=0.2
53 %endif
54
55 # The dynamic loader also requires different names.
56 i.86-.*-linux.*         ld=ld-linux.so.2
57 sparc64-.*-linux.*      ld=ld-linux.so.2        GLIBC_2.2
58 sparc.*-.*-linux.*      ld=ld-linux.so.2
59 alpha.*-.*-linux.*      ld=ld-linux.so.2
60 arm.*-.*-linux.*        ld=ld-linux.so.2
61 sh.*-.*-linux.*         ld=ld-linux.so.2        GLIBC_2.2
62 ia64-.*-linux.*         ld=ld-linux-ia64.so.2   GLIBC_2.2
63 mips.*-.*-linux.*       ld=ld.so.1              GLIBC_2.0 GLIBC_2.2
64 # We use the ELF ABI standard name for the default.
65 .*-.*-.*                ld=ld.so.1
66
67 # The -ldl interface (see <dlfcn.h>) is the same on all platforms.
68 alpha.*-.*-linux.*      libdl=2.1
69 mips.*-.*-linux.*       libdl=2                 GLIBC_2.0 GLIBC_2.2
70 .*-.*-.*                libdl=2
71
72 # So far the -lutil interface is the same on all platforms, except for the
73 # `struct utmp' format, which depends on libc.
74 alpha.*-.*-linux.*      libutil=1.1
75 .*-.*-.*                libutil=1
76
77 # Version number 2 is used on other systems for the BIND 4.9.5 resolver
78 # interface.
79 alpha.*-.*-linux.*      libresolv=2.1
80 mips.*-.*-linux.*       libresolv=2             GLIBC_2.0 GLIBC_2.2
81 .*-.*-.*                libresolv=2
82
83 # Interface revision of nss_* modules.  This must match NSS_SHLIB_REVISION
84 # in nss/nsswitch.h, which determines the library names used for service
85 # names given in /etc/nsswitch.conf.
86 mips.*-.*-linux.*       libnss_files=2          GLIBC_2.0 GLIBC_2.2
87 mips.*-.*-linux.*       libnss_dns=2            GLIBC_2.0 GLIBC_2.2
88 mips.*-.*-linux.*       libnss_db=2             GLIBC_2.0 GLIBC_2.2
89 mips.*-.*-linux.*       libnss_compat=2         GLIBC_2.0 GLIBC_2.2
90 mips.*-.*-linux.*       libnss_nis=2            GLIBC_2.0 GLIBC_2.2
91 mips.*-.*-linux.*       libnss_nisplus=2        GLIBC_2.0 GLIBC_2.2
92 mips.*-.*-linux.*       libnss_ldap=2           GLIBC_2.0 GLIBC_2.2
93 mips.*-.*-linux.*       libnss_hesiod=2         GLIBC_2.0 GLIBC_2.2
94 .*-.*-.*                libnss_files=2
95 .*-.*-.*                libnss_dns=2
96 .*-.*-.*                libnss_db=2
97 .*-.*-.*                libnss_compat=2
98 .*-.*-.*                libnss_nis=2
99 .*-.*-.*                libnss_nisplus=2
100 .*-.*-.*                libnss_ldap=2
101 .*-.*-.*                libnss_hesiod=2
102
103 # Version for libnsl with YP and NIS+ functions.
104 alpha.*-.*-linux.*      libnsl=1.1
105 mips.*-.*-linux.*       libnsl=1                GLIBC_2.0 GLIBC_2.2
106 .*-.*-.*                libnsl=1
107
108 # We use libdb.so.3 for the interface in version 2.x of the Berkeley DB code.
109 .*-.*-.*                libdb=3
110 # This is the Berkeley DB 1.85.  We use the version numbers from glibc 2.0.*
111 # for all times.
112 alpha-.*-linux.*        libdb1=2.1
113 .*-.*-.*                libdb1=2
114
115 # This defines the shared library version numbers we will install.
116 alpha.*-.*-linux.*      libcrypt=1.1
117 .*-.*-.*                libcrypt=1
118
119 # The gross patch for programs assuming broken locale implementations.
120 alpha.*-.*-linux.*      libBrokenLocale=1.1
121 .*-.*-.*                libBrokenLocale=1
122
123 # The real-time library from POSIX.1b.
124 mips.*-.*-linux.*       librt=1                 GLIBC_2.0 GLIBC_2.2
125 .*-.*-.*                librt=1